home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / hardware / h550_driver / README < prev   
Encoding:
Text File  |  1994-08-02  |  4.3 KB  |  105 lines

  1.  
  2.                 ~4Dgifts/toolbox/hardware/h550_driver README
  3.  
  4.  
  5.       Streams Driver for Comtrol Hostess 550 ISA Serial Port Board
  6.                               IRIX 5.2 ONLY
  7.  
  8.       =================================================================
  9.       
  10.       Included here is the source for an in-process project of writing a 
  11.       device driver for the Comtrol Hostess 550 Serial Port Board.  The 
  12.       board can have either 4 our 8 ports per card.  The UART chip used
  13.       on the board is a 16550.
  14.       
  15.       Since this is a work in progress, not all of the functionality of
  16.       the driver is working, or has been tested.  As of this date, the
  17.       following functions/routines are known to work:
  18.  
  19.  
  20.         Routine        Function        
  21.         -------        --------------------------------
  22.         edtinit        Initializes the board and the ports found
  23.  
  24.         open           Opens a port for use
  25.         
  26.         close          Closes a port
  27.  
  28.         wput           Writes data to the port (i.e. transmits)
  29.  
  30.         rsrv           Read service - reads data from the port.
  31.  
  32.         poll           The h550_poll routine does accept and
  33.                        properly identify interrupts.
  34.  
  35.       The read and write functions of the driver have only been
  36.       tested on port 1.  It is not known whether any of the other
  37.       ports are functional.  The ioctl routines have not been tested.  
  38.       Neither have the modem and flow modem controls and capabilities.
  39.       
  40.       This driver is included in the Toolbox as an example of an
  41.       EISA and/or ISA driver.  While there are differences between
  42.       EISA and ISA boards which require slightly different software
  43.       calls and setup, this driver is meant to show the general 
  44.       approaches to making an EISA or ISA board function on the
  45.       Silicon Graphics Indigo2 platform.  Note that this driver 
  46.       will only operate on IRIX 5.2 or later.  There is no software
  47.       to support writing drivers for EISA or ISA cards under IRIX
  48.       4.0.5H (the O/S originally shipped with the Indigo2).
  49.               
  50.       The most important routine to pay attention to is the EDTINIT
  51.       routine.  This shows how the address mapping and interrupt
  52.       allocation for an ISA board is done.  This code was taken
  53.       almost verbatim from Chapter 4 of the IRIX Device Driver 
  54.       Programming Guide (007-0911-030).
  55.       
  56.       Note that the macros INB and OUTB were created to replace 
  57.       the inb and outb commands often found in EISA/ISA drivers.
  58.               
  59.       For a complete discussion of the issues involved in writing a 
  60.       driver for an EISA or ISA board, GIO, VME or SCSI devices, 
  61.       consult the Device Driver Programming Guide.  This document
  62.       contains a thorough description of all the issues as well as
  63.       information about many SGI platforms and how to debug device
  64.       drivers on the Silicon Graphics platforms.
  65.       
  66.       
  67.       The files included in this directory are:
  68.       
  69.        Makefile.h550   The Makefile for this driver
  70.        README          This file
  71.        h550.c          The device driver source
  72.        h550.h          The header file
  73.        h550.o          The object file (compiled under IRIX 5.2)
  74.        h550.sm         The system file for this driver - this goes
  75.                        in the /var/sysgen/system directory
  76.        h550_dev        The lines that need to be added to MAKEDEV
  77.        h550.master     The master file for this driver.  This file 
  78.                        goes in the /var/sysgen/master.d directory
  79.                        as "h550"
  80.               
  81.       
  82.       To install this driver, do the following:
  83.       
  84.        Compile the source (only if you have IRIX 5.2) -
  85.           follow the instructions in Makefile.h550 for this.
  86.       
  87.        Copy the h550.o file into /var/sysgen/boot
  88.       
  89.        Copy the h550.sm file into /var/sysgen/system
  90.       
  91.        Copy the h550.master file into /var/sysgen/master.d 
  92.           as "h550"
  93.       
  94.        Modify the file /usr/include/sys/strids.h to create a
  95.           streams ID for the comtrol module.  Choose a number
  96.           that is not currently used, like 9300.
  97.       
  98.        Add the lines in h550_dev to the file /dev/MAKEDEV
  99.       
  100.        Run MAKEDEV - "MAKEDEV h550"
  101.       
  102.        Reconfigure the kernel - type "autoconfig -f -v"
  103.       
  104.        Reboot the system to use the driver
  105.